<?php namespace web\admin\controller;

/**
 * 刘超群
 * 分类控制器
 * 2016年9月28日16:01:27
 */

class Category extends Common{
	protected $db;
	protected $TypeData;
	public function __construct()
	{
		parent::__construct();
		$this->TypeData = new \system\model\Type();
		$this->db = new \system\model\Category();
	}
//首页数据
	public function index(){
		$data = Data::tree($this->db->get(),'cname');
//		p($data);
		View::with('data',$data);
		View::make();
	}
//	顶级分类添加
	public function store(){
		if (IS_POST){
			if ($this->db->store()){
				message('添加成功',u('index'),'success');
			}
			message($this->db->getError(),'','error');
		}
		View::make();
	}
//	子集分类添加
	public function addSon(){
//		$cid = q('get.cid',0,'intval');
		if (IS_POST){
			if ($this->db->store()){
				message('添加成功',u('index'),'success');
			}
			message($this->db->getError(),'','error');
		}
		$TypeData = $this->TypeData->get();
		View::with('TypeData',$TypeData);
		View::make();
	}
//	编辑
	public function edit(){
		if(IS_POST){
			if ($this->db->edit()){
				message('修改成功',u('index'),'success');
			}
			message($this->db->getError(),'','error');
		}
		$cid = q('get.cid',0,'intval');
		//获取旧数据
		$TypeData = $this->TypeData->get();
		$oldData = $this->db->where('cid',$cid)->first();
		//p($oldData);
		//处理所属分类getCateData()是模型中的方法来完成
		$cateData = $this->db->getCateData($cid);
		View::with('TypeData',$TypeData);
		View::with('oldData',$oldData)->with('cateData',$cateData)->make();
	}
	public function del(){
		$cid = q('get.cid',0,'intval');
		//把子集提一级（上位）
		//获取当前cid所对应的pid
		//pluck获取单一字段
		$pid = $this->db->where('cid',$cid)->pluck('pid');
		$this->db->where('pid',$cid)->update(['pid'=>$pid]);
		//把当前cid这条数据删除
		$this->db->where('cid',$cid)->delete();
		message('删除成功',u('index'),'error');
	}
}
